Add support for calls to external symbols
authorChris Lattner <sabre@nondot.org>
Sun, 18 Dec 2005 23:07:11 +0000 (23:07 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 18 Dec 2005 23:07:11 +0000 (23:07 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24838 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Sparc/SparcISelDAGToDAG.cpp
lib/Target/SparcV8/SparcV8ISelDAGToDAG.cpp

index fd98010ac6dc51dc084074171637f3f838a5d30d..c3f10c5433e5ee0937d8984957440d14089cd44f 100644 (file)
@@ -964,7 +964,8 @@ SDOperand SparcV8DAGToDAGISel::Select(SDOperand Op) {
     // Emits: (CALL:void (tglobaladdr:i32):$dst)
     // Pattern complexity = 2  cost = 1
     SDOperand N1 = N->getOperand(1);
-    if (N1.getOpcode() != ISD::TargetGlobalAddress) goto P47Fail;
+    if (N1.getOpcode() != ISD::TargetGlobalAddress &&
+        N1.getOpcode() != ISD::ExternalSymbol) goto P47Fail;
     SDOperand InFlag = SDOperand(0, 0);
     SDOperand Chain = N->getOperand(0);
     SDOperand Tmp0 = N1;
index fd98010ac6dc51dc084074171637f3f838a5d30d..c3f10c5433e5ee0937d8984957440d14089cd44f 100644 (file)
@@ -964,7 +964,8 @@ SDOperand SparcV8DAGToDAGISel::Select(SDOperand Op) {
     // Emits: (CALL:void (tglobaladdr:i32):$dst)
     // Pattern complexity = 2  cost = 1
     SDOperand N1 = N->getOperand(1);
-    if (N1.getOpcode() != ISD::TargetGlobalAddress) goto P47Fail;
+    if (N1.getOpcode() != ISD::TargetGlobalAddress &&
+        N1.getOpcode() != ISD::ExternalSymbol) goto P47Fail;
     SDOperand InFlag = SDOperand(0, 0);
     SDOperand Chain = N->getOperand(0);
     SDOperand Tmp0 = N1;