llvm-6502/test/CodeGen/ARM64/dead-def-frame-index.ll
Tim Northover 2a2cce79be ARM64: print canonical syntax for add/sub (imm) instructions.
Since these instructions only accept a 12-bit immediate, possibly shifted left
by 12, the canonical syntax used by the architecture reference manual is "#N {,
lsl #12 }". We should accept an immediate that has already been shifted, (e.g.

Also, print a comment giving the full addend since it can be helpful.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207633 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-30 11:19:15 +00:00

19 lines
460 B
LLVM

; RUN: llc -march=arm64 < %s | FileCheck %s
target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
target triple = "arm64-apple-ios7.0.0"
; Function Attrs: nounwind ssp uwtable
define i32 @test1() #0 {
%tmp1 = alloca i8
%tmp2 = alloca i32, i32 4096
%tmp3 = icmp eq i8* %tmp1, null
%tmp4 = zext i1 %tmp3 to i32
ret i32 %tmp4
; CHECK-LABEL: test1
; CHECK: adds [[TEMP:[a-z0-9]+]], sp, #4, lsl #12
; CHECK: adds [[TEMP]], [[TEMP]], #15
}