1*9880d681SAndroid Build Coastguard Worker; NOTE: Assertions have been autogenerated by utils/update_test_checks.py 2*9880d681SAndroid Build Coastguard Worker; REQUIRES: asserts 3*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=-sse2 | FileCheck %s 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdefine <16 x i8> @PR27973() { 6*9880d681SAndroid Build Coastguard Worker; CHECK-LABEL: PR27973: 7*9880d681SAndroid Build Coastguard Worker; CHECK: # BB#0: 8*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 15(%rdi) 9*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 14(%rdi) 10*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 13(%rdi) 11*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 12(%rdi) 12*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 11(%rdi) 13*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 10(%rdi) 14*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 9(%rdi) 15*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 8(%rdi) 16*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 7(%rdi) 17*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 6(%rdi) 18*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 5(%rdi) 19*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 4(%rdi) 20*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 3(%rdi) 21*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 2(%rdi) 22*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, 1(%rdi) 23*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movb $0, (%rdi) 24*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: movq %rdi, %rax 25*9880d681SAndroid Build Coastguard Worker; CHECK-NEXT: retq 26*9880d681SAndroid Build Coastguard Worker; 27*9880d681SAndroid Build Coastguard Worker %t0 = zext <16 x i8> zeroinitializer to <16 x i32> 28*9880d681SAndroid Build Coastguard Worker %t1 = add nuw nsw <16 x i32> %t0, <i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1> 29*9880d681SAndroid Build Coastguard Worker %t2 = lshr <16 x i32> %t1, <i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1, i32 1> 30*9880d681SAndroid Build Coastguard Worker %t3 = trunc <16 x i32> %t2 to <16 x i8> 31*9880d681SAndroid Build Coastguard Worker ret <16 x i8> %t3 32*9880d681SAndroid Build Coastguard Worker} 33