comparison gen/tocall.cpp @ 526:642f6fa854e5

First step towards D abi compliance. Framepointer elimination is now disabled for functions using inline asm (with a hack from aKor).
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Tue, 19 Aug 2008 20:18:01 +0200
parents 993b217af574
children d30c40f1128d
comparison
equal deleted inserted replaced
525:b18b6135e54b 526:642f6fa854e5
35 unsigned DtoCallingConv(LINK l) 35 unsigned DtoCallingConv(LINK l)
36 { 36 {
37 if (l == LINKc || l == LINKcpp) 37 if (l == LINKc || l == LINKcpp)
38 return llvm::CallingConv::C; 38 return llvm::CallingConv::C;
39 else if (l == LINKd || l == LINKdefault) 39 else if (l == LINKd || l == LINKdefault)
40 return llvm::CallingConv::Fast; 40 {
41 if (global.params.cpu == ARCHx86)
42 return llvm::CallingConv::X86_StdCall;
43 else
44 return llvm::CallingConv::Fast;
45 }
41 else if (l == LINKwindows) 46 else if (l == LINKwindows)
42 return llvm::CallingConv::X86_StdCall; 47 return llvm::CallingConv::X86_StdCall;
43 else 48 else
44 assert(0 && "Unsupported calling convention"); 49 assert(0 && "Unsupported calling convention");
45 } 50 }