mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-04 18:06:49 +00:00
3a1a366906
The dream of a unified check-line auto-generator for all phases of compilation is dead. The llc script has already diverged to be better at its goal, so having 2 scripts that do almost the same thing is just causing confusion. We can rip out the llc ability in update_test_checks.py next and rename it, so it will be clear that we have one script for llc check auto-generation and another for opt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@305206 91177308-0d34-0410-b5e6-96231b3b80d8
32 lines
1.2 KiB
LLVM
32 lines
1.2 KiB
LLVM
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
|
; REQUIRES: asserts
|
|
; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=-sse2 | FileCheck %s
|
|
|
|
define <16 x i8> @PR27973() {
|
|
; CHECK-LABEL: PR27973:
|
|
; CHECK: # BB#0:
|
|
; CHECK-NEXT: movb $0, 15(%rdi)
|
|
; CHECK-NEXT: movb $0, 14(%rdi)
|
|
; CHECK-NEXT: movb $0, 13(%rdi)
|
|
; CHECK-NEXT: movb $0, 12(%rdi)
|
|
; CHECK-NEXT: movb $0, 11(%rdi)
|
|
; CHECK-NEXT: movb $0, 10(%rdi)
|
|
; CHECK-NEXT: movb $0, 9(%rdi)
|
|
; CHECK-NEXT: movb $0, 8(%rdi)
|
|
; CHECK-NEXT: movb $0, 7(%rdi)
|
|
; CHECK-NEXT: movb $0, 6(%rdi)
|
|
; CHECK-NEXT: movb $0, 5(%rdi)
|
|
; CHECK-NEXT: movb $0, 4(%rdi)
|
|
; CHECK-NEXT: movb $0, 3(%rdi)
|
|
; CHECK-NEXT: movb $0, 2(%rdi)
|
|
; CHECK-NEXT: movb $0, 1(%rdi)
|
|
; CHECK-NEXT: movb $0, (%rdi)
|
|
; CHECK-NEXT: movq %rdi, %rax
|
|
; CHECK-NEXT: retq
|
|
%t0 = zext <16 x i8> zeroinitializer to <16 x i32>
|
|
%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>
|
|
%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>
|
|
%t3 = trunc <16 x i32> %t2 to <16 x i8>
|
|
ret <16 x i8> %t3
|
|
}
|