diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2011-02-05 15:11:03 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2011-02-05 15:11:03 +0000 |
commit | b1bbdd8d44a068a3b85263a986ccd386eb3854b7 (patch) | |
tree | 7e30c0d34cdb1df86c8b052caf895c9920317df3 /llvm/lib | |
parent | f7f319d4d35c1b447f4afca97029b90e5b4364e9 (diff) | |
download | bcm5719-llvm-b1bbdd8d44a068a3b85263a986ccd386eb3854b7.tar.gz bcm5719-llvm-b1bbdd8d44a068a3b85263a986ccd386eb3854b7.zip |
lib/Target/X86/X86JITInfo.cpp: Add Win64 stuff.
llvm-svn: 124947
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86JITInfo.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86JITInfo.cpp b/llvm/lib/Target/X86/X86JITInfo.cpp index 9a07700b930..3f88fa69d0e 100644 --- a/llvm/lib/Target/X86/X86JITInfo.cpp +++ b/llvm/lib/Target/X86/X86JITInfo.cpp @@ -127,9 +127,17 @@ extern "C" { "movaps %xmm6, 96(%rsp)\n" "movaps %xmm7, 112(%rsp)\n" // JIT callee +#ifdef _WIN64 + "subq $32, %rsp\n" + "movq %rbp, %rcx\n" // Pass prev frame and return address + "movq 8(%rbp), %rdx\n" + "call " ASMPREFIX "X86CompilationCallback2\n" + "addq $32, %rsp\n" +#else "movq %rbp, %rdi\n" // Pass prev frame and return address "movq 8(%rbp), %rsi\n" "call " ASMPREFIX "X86CompilationCallback2\n" +#endif // Restore all XMM arg registers "movaps 112(%rsp), %xmm7\n" "movaps 96(%rsp), %xmm6\n" |