Special case aliases in GlobalValue::getAlignment.
[oota-llvm.git] / include / llvm / IR / CallingConv.h
index 4437af255748b8bc7450ee57c582266ee4f0d367..af44e8a30c347a8d0f1bf88f17057dbff7de9ccc 100644 (file)
@@ -58,6 +58,14 @@ namespace CallingConv {
     // stackmap and patchpoint intrinsics).
     AnyReg = 13,
 
+    // PreserveMost - Calling convention for runtime calls that preserves most
+    // registers.
+    PreserveMost = 14,
+
+    // PreserveAll - Calling convention for runtime calls that preserves
+    // (almost) all registers.
+    PreserveAll = 15,
+
     // Target - This is the start of the target-specific calling conventions,
     // e.g. fastcall and thiscall on X86.
     FirstTargetCC = 64,
@@ -129,7 +137,13 @@ namespace CallingConv {
     /// convention differs from the more common \c X86_64_SysV convention
     /// in a number of ways, most notably in that XMM registers used to pass
     /// arguments are shadowed by GPRs, and vice versa.
-    X86_64_Win64 = 79
+    X86_64_Win64 = 79,
+
+    /// \brief The calling convention used for __cdecl methods on win32.
+    /// Differs from the C calling convention only in that the order of the
+    /// first parameter and the sret parameter are swapped.
+    X86_CDeclMethod = 80
+
   };
 } // End CallingConv namespace