IR support for extractvalue and insertvalue instructions. Also, begin
moving toward making structs and arrays first-class types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51157 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
index 4998613..4a4a52c 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
@@ -703,6 +703,9 @@
   void visitInsertElement(User &I);
   void visitShuffleVector(User &I);
 
+  void visitExtractValue(User &I);
+  void visitInsertValue(User &I);
+
   void visitGetElementPtr(User &I);
   void visitSelect(User &I);
 
@@ -2555,6 +2558,16 @@
                            V1, V2, Mask));
 }
 
+void SelectionDAGLowering::visitInsertValue(User &I) {
+  assert(0 && "insertvalue instruction not implemented");
+  abort();
+}
+
+void SelectionDAGLowering::visitExtractValue(User &I) {
+  assert(0 && "extractvalue instruction not implemented");
+  abort();
+}
+
 
 void SelectionDAGLowering::visitGetElementPtr(User &I) {
   SDOperand N = getValue(I.getOperand(0));