bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/20614] New: gas missing full operand support for vpbroadcastb a


From: geir at cray dot com
Subject: [Bug gas/20614] New: gas missing full operand support for vpbroadcastb and vpbroadcastw instructions
Date: Fri, 16 Sep 2016 16:16:53 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=20614

            Bug ID: 20614
           Summary: gas missing full operand support for vpbroadcastb and
                    vpbroadcastw instructions
           Product: binutils
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: geir at cray dot com
  Target Milestone: ---

This does not assemble with the latest gas from git/master (commit d2dfe70):

        .text
        .globl  main
        .p2align        6, 0x90
        .type   main,@function
main:
        vpbroadcastb    %al, %ymm0
        vpbroadcastw    %ax, %ymm1
        vpbroadcastb    %eax, %ymm2
        vpbroadcastw    %eax, %ymm3
        retq

The first two vpbroadcast instructions fail with "invalid operand" while the
second two get through.

I checked the opcodes table in the latest master binutils and it only supports
GR32 and GR64 source registers for these instructions.  I see nothing in the
Intel documentation that restricts these instructions to only take 32- and
64-bit GPRs.  As far as I can tell encodings for 8- and 16-bit GPR sizes are
legal.

It's certainly possible I missed some subtlety and if so it would be helpful to
have a better understanding of why these operand sizes aren't supported.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]