[LLVMbugs] [Bug 23324] New: Second argument to signed Neon vtbl functions should be unsigned

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Apr 22 13:33:00 PDT 2015


https://llvm.org/bugs/show_bug.cgi?id=23324

            Bug ID: 23324
           Summary: Second argument to signed Neon vtbl functions should
                    be unsigned
           Product: clang
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Headers
          Assignee: unassignedclangbugs at nondot.org
          Reporter: lennox at cs.columbia.edu
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

The ARM C Language Extensions document (ACLE) specifies that the second (index)
parameter to the vtbl and vtbx family of functions should be unsigned, even
when the other parameters are signed:

Aarch32:
T vtblN_ST(TxN a, UT b);
T vtbxN_ST(T a, TxN b, UT c);

Aarch64:
T vqtblNQ_ST (T2xN t, UT idx);
T vqtbxNQ_ST (T a, T2xN t, UT idx);

E.g., 
int8x8_t vqtbl1_s8 (int8x16_t a, uint8x8_t b)

Clang declares them to be signed, instead.

GCC has had these correct for Aarch64 since GCC 4.9, though for ARM (Aarch32)
it still has the second value signed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150422/367435a4/attachment.html>


More information about the llvm-bugs mailing list