mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-27 13:30:05 +00:00
65aac0f8e3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217570 91177308-0d34-0410-b5e6-96231b3b80d8
43 lines
1.4 KiB
LLVM
43 lines
1.4 KiB
LLVM
; RUN: llc < %s | FileCheck %s
|
|
|
|
; ModuleID = 'aarch64_tree_tests.bc'
|
|
target datalayout = "e-m:e-i64:64-i128:128-n32:64-S128"
|
|
target triple = "arm64--linux-gnu"
|
|
|
|
; CHECK-LABLE: @aarch64_tree_tests_and
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 32767
|
|
; CHECK: .hword 4664
|
|
; CHECK: .hword 32767
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 0
|
|
; CHECK: .hword 0
|
|
|
|
; Function Attrs: nounwind readnone
|
|
define <8 x i16> @aarch64_tree_tests_and(<8 x i16> %a) {
|
|
entry:
|
|
%and = and <8 x i16> <i16 0, i16 undef, i16 undef, i16 0, i16 0, i16 undef, i16 undef, i16 0>, %a
|
|
%ret = add <8 x i16> %and, <i16 -32768, i16 32767, i16 4664, i16 32767, i16 -32768, i16 -32768, i16 0, i16 0>
|
|
ret <8 x i16> %ret
|
|
}
|
|
|
|
; CHECK-LABLE: @aarch64_tree_tests_or
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 32766
|
|
; CHECK: .hword 4664
|
|
; CHECK: .hword 32766
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 32768
|
|
; CHECK: .hword 65535
|
|
; CHECK: .hword 65535
|
|
|
|
; Function Attrs: nounwind readnone
|
|
define <8 x i16> @aarch64_tree_tests_or(<8 x i16> %a) {
|
|
entry:
|
|
%or = or <8 x i16> <i16 -1, i16 undef, i16 undef, i16 -1, i16 -1, i16 undef, i16 undef, i16 -1>, %a
|
|
%ret = add <8 x i16> %or, <i16 -32767, i16 32767, i16 4665, i16 32767, i16 -32767, i16 -32767, i16 0, i16 0>
|
|
ret <8 x i16> %ret
|
|
}
|
|
|