[PATCH] Add x86 SSE5 instructions to the GNU binary utilities
rajagopal, dwarak
dwarak.rajagopal@amd.com
Thu Sep 13 20:11:00 GMT 2007
The enclosed patch adds support for the SSE5 instructions to the
assembler and disassembler.
I have made changes to the original patch so that it uses bitfields (the
new infrastructure changes which H.J had checked in last week) for
cpu_flag, opcode_modifier and operand_types for the new instructions.
Is this ok?
Thanks,
Dwarak
> -----Original Message-----
> From: Michael Meissner [mailto:michael.meissner@amd.com]
> Sent: Friday, August 31, 2007 12:55 PM
> To: binutils@sourceware.org; Harle, Christophe; rajagopal, dwarak
> Cc: Meissner, Michael
> Subject: [PATCH] Add x86 SSE5 instructions to the GNU binary utilities
>
> On August 30th, AMD announced the new SSE5 instruction set that will
be
> part of future processors. The programmer's guide for these new
> instructions is located at:
> http://developer.amd.com/assets/sse5_43479_BDAPMU_3-00_8-27-07.pdf
>
> The enclosed patch adds support for the SSE5 instructions to the
assembler
> and
> disassembler. I had to gzip the patch file to get it small enough to
be
> able
> to post (i386-tbl.h and the new test are too big). Is it ok to apply
this
> patch? If not, what changes would people prefer?
>
> It turned out the old move from test register instructions that were
in
> the
> I386 and I486 processors but is not in modern processors overlaps with
the
> SSE5
> encoding (0x0f24). These can be disambiguated because the move from
test
> register instruction always uses MODRM encoding with the upper 2 bits
set
> (for
> register/register encoding), and none of the SSE5 instructions set the
> upper 2
> bits.
>
> I needed 3 extra opcode_modifier bits to implement SSE5, and only two
bits
> are
> available without going to long long. I modified the structures to
add an
> opcode_modifier2 field, and I changed the i386-gen.c program so that
> existing
> lines in the i386-opc.tbl file will be handled without modifying them.
I
> can
> modify all of the instruction lines to add the 0 field if people would
> prefer.
>
> Note, I had originally posted this to the bug-bintutils@gnu.org,
instead
> of
> binutils@sourceware.org. Sorry about the duplicate post.
>
> --
> Michael Meissner, AMD
> 90 Central Street, MS 83-29, Boxborough, MA, 01719, USA
> michael.meissner@amd.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Changelog
Type: application/octet-stream
Size: 6468 bytes
Desc: Changelog
URL: <https://sourceware.org/pipermail/binutils/attachments/20070913/844e5e63/attachment.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binutils-sse5.patch.gz
Type: application/x-gzip
Size: 70193 bytes
Desc: binutils-sse5.patch.gz
URL: <https://sourceware.org/pipermail/binutils/attachments/20070913/844e5e63/attachment.bin>
More information about the Binutils
mailing list