blob: d1ba9a845800df3f960eee7e1afcd7d15d7f7472 [file] [log] [blame]
Dan Gohman36a09472009-09-08 23:54:48 +00001; RUN: llc < %s
Mon P Wangbae527d2008-12-10 03:59:02 +00002
3; Examples that exhibits a bug in DAGCombine. The case is triggered by the
4; following program. The bug is DAGCombine assumes that the bit convert
5; preserves the number of elements so the optimization code tries to read
6; through the 3rd mask element, which doesn't exist.
7define i32 @update(<2 x i64> %val1, <2 x i64> %val2) nounwind readnone {
8entry:
Dan Gohmanaceba312010-01-05 17:55:26 +00009 %shuf = shufflevector <2 x i64> %val1, <2 x i64> %val2, <2 x i32> <i32 0, i32 3>
10 %bit = bitcast <2 x i64> %shuf to <4 x i32>
11 %res = extractelement <4 x i32> %bit, i32 3
12 ret i32 %res
13}