X86CallingConv.h revision dce4a407a24b04eebc6a376f8e62b41aaa7b071f
1//=== X86CallingConv.h - X86 Custom Calling Convention Routines -*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// This file contains the custom routines for the X86 Calling Convention that 11// aren't done by tablegen. 12// 13//===----------------------------------------------------------------------===// 14 15#ifndef X86CALLINGCONV_H 16#define X86CALLINGCONV_H 17 18#include "llvm/CodeGen/CallingConvLower.h" 19#include "llvm/IR/CallingConv.h" 20 21namespace llvm { 22 23inline bool CC_X86_AnyReg_Error(unsigned &, MVT &, MVT &, 24 CCValAssign::LocInfo &, ISD::ArgFlagsTy &, 25 CCState &) { 26 llvm_unreachable("The AnyReg calling convention is only supported by the " \ 27 "stackmap and patchpoint intrinsics."); 28 // gracefully fallback to X86 C calling convention on Release builds. 29 return false; 30} 31 32} // End llvm namespace 33 34#endif 35 36