[LLVMbugs] [Bug 23800] New: Invalid shufflevector operands
bugzilla-daemon at llvm.org
bugzilla-daemon at llvm.org
Tue Jun 9 11:06:50 PDT 2015
https://llvm.org/bugs/show_bug.cgi?id=23800
Bug ID: 23800
Summary: Invalid shufflevector operands
Product: clang
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: -New Bugs
Assignee: unassignedclangbugs at nondot.org
Reporter: moritz.pflanzer14 at imperial.ac.uk
CC: llvmbugs at cs.uiuc.edu
Classification: Unclassified
Created attachment 14452
--> https://llvm.org/bugs/attachment.cgi?id=14452&action=edit
Test-case with produces the wrong code
The following (OpenCL) code results in undef operands of a shufflevector LLVM
IR instruction when compiled with clang.
$ clang -S -emit-llvm -O0 -o - input.c
Clang and LLVM have been built from trunk. The bug does not occur with "Apple
LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)".
Test-case:
typedef unsigned int uint16 __attribute((ext_vector_type(16)));
typedef unsigned int uint8 __attribute((ext_vector_type(8)));
void test1(void) {
(uint16)(((uint16)0).s0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
}
Part of LLVM IR:
%5 = shufflevector <16 x i32> %3, <16 x i32> undef, <16 x i64> <i64 0, i64
undef, i64 undef, i64 undef, i64 undef, i64 undef, i64 undef, i64 undef, i64
undef, i64 undef, i64 undef, i64 undef, i64 undef, i64 undef, i64 undef, i64
undef>
--
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/20150609/8eb349e9/attachment.html>
More information about the llvm-bugs
mailing list