mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-29 10:32:47 +00:00
b720a3d15c
-- This patch enables LLVM to emit Win64-native unwind info rather than DWARF CFI. It handles all corner cases (I hope), including stack realignment. Because the unwind info is not flexible enough to describe stack frames with a gap of unknown size in the middle, such as the one caused by stack realignment, I modified register spilling code to place all spills into the fixed frame slots, so that they can be accessed relative to the frame pointer. Patch by Vadim Chugunov! Reviewed By: rnk Differential Revision: http://reviews.llvm.org/D4081 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@211691 91177308-0d34-0410-b5e6-96231b3b80d8
11 lines
318 B
LLVM
11 lines
318 B
LLVM
; RUN: llc -mcpu=generic -mtriple=x86_64-mingw32 < %s | FileCheck %s
|
|
; CHECK: subq $40, %rsp
|
|
; CHECK: movaps %xmm8, 16(%rsp)
|
|
; CHECK: movaps %xmm7, (%rsp)
|
|
|
|
define i32 @a() nounwind {
|
|
entry:
|
|
tail call void asm sideeffect "", "~{xmm7},~{xmm8},~{dirflag},~{fpsr},~{flags}"() nounwind
|
|
ret i32 undef
|
|
}
|