From d637a8b436eb616fe08f7a4f7912af9d21848136 Mon Sep 17 00:00:00 2001
From: Chris Lattner <sabre@nondot.org>
Date: Tue, 27 Feb 2007 06:59:52 +0000
Subject: [PATCH] Add calling convention info

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34661 91177308-0d34-0410-b5e6-96231b3b80d8
---
 lib/Target/Target.td             | 7 ++++++-
 lib/Target/X86/X86CallingConv.td | 6 +++++-
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/lib/Target/Target.td b/lib/Target/Target.td
index 6f8771d2902..fbc972a2928 100644
--- a/lib/Target/Target.td
+++ b/lib/Target/Target.td
@@ -355,6 +355,11 @@ class Processor<string n, ProcessorItineraries pi, list<SubtargetFeature> f> {
 }
 
 //===----------------------------------------------------------------------===//
-// Pull in the common support for DAG isel generation
+// Pull in the common support for calling conventions.
+//
+include "TargetCallingConv.td"
+
+//===----------------------------------------------------------------------===//
+// Pull in the common support for DAG isel generation.
 //
 include "TargetSelectionDAG.td"
diff --git a/lib/Target/X86/X86CallingConv.td b/lib/Target/X86/X86CallingConv.td
index 635c729c9d8..98b978882e0 100644
--- a/lib/Target/X86/X86CallingConv.td
+++ b/lib/Target/X86/X86CallingConv.td
@@ -71,7 +71,11 @@ def RetCC_X86_64 : CallingConv<[
   CCDelegateTo<RetCC_X86_64_C>
 ]>;
 
-
+// This is the return-value convention used for the entire X86 backend.
+def RetCC_X86 : CallingConv<[
+  CCMatchIf<"Subtarget->is64Bit()", CCDelegateTo<RetCC_X86_64>>,
+  CCDelegateTo<RetCC_X86_32>
+]>;
 
 //===----------------------------------------------------------------------===//
 // Argument Calling Conventions