mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-23 21:13:02 +02:00
13a27b5a96
This corrects the MI annotations for the stack adjustment following the __chkstk invocation. We were marking the original SP usage as a Def rather than Kill. The (new) assigned value is the definition, the original reference is killed. Adjust the ISelLowering to mark Kills and FrameSetup as well. This partially resolves PR27480. llvm-svn: 267361
25 lines
872 B
LLVM
25 lines
872 B
LLVM
; RUN: llc -mtriple=thumbv7-windows -mcpu=cortex-a9 -verify-machineinstrs %s -o - \
|
|
; RUN: | FileCheck -check-prefix CHECK-DEFAULT-CODE-MODEL %s
|
|
|
|
; RUN: llc -mtriple=thumbv7-windows -mcpu=cortex-a9 -code-model=large -verify-machineinstrs %s -o - \
|
|
; RUN: | FileCheck -check-prefix CHECK-LARGE-CODE-MODEL %s
|
|
|
|
define arm_aapcs_vfpcc void @check_watermark() {
|
|
entry:
|
|
%buffer = alloca [4096 x i8], align 1
|
|
ret void
|
|
}
|
|
|
|
; CHECK-DEFAULT-CODE-MODEL: check_watermark:
|
|
; CHECK-DEFAULT-CODE-MODEL: movw r4, #1024
|
|
; CHECK-DEFAULT-CODE-MODEL: bl __chkstk
|
|
; CHECK-DEFAULT-CODE-MODEL: sub.w sp, sp, r4
|
|
|
|
; CHECK-LARGE-CODE-MODEL: check_watermark:
|
|
; CHECK-LARGE-CODE-MODEL: movw r12, :lower16:__chkstk
|
|
; CHECK-LARGE-CODE-MODEL: movt r12, :upper16:__chkstk
|
|
; CHECK-LARGE-CODE-MODEL: movw r4, #1024
|
|
; CHECK-LARGE-CODE-MODEL: blx r12
|
|
; CHECK-LARGE-CODE-MODEL: sub.w sp, sp, r4
|
|
|