add jump tables, constant pools and some trivial global
lowering stuff.  We can now compile hello world to:

_main:
	stm , 
	mov r7, sp
	sub sp, sp, #4
	mov r0, #0
	str r0, 
	ldr r0, 
	bl _printf
	ldr r0, 
	mov sp, r7
	ldm , 

Almost looks like arm code :)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84542 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/ARM/AsmPrinter/ARMMCInstLower.h b/lib/Target/ARM/AsmPrinter/ARMMCInstLower.h
index 67fe79c..4e15c2f 100644
--- a/lib/Target/ARM/AsmPrinter/ARMMCInstLower.h
+++ b/lib/Target/ARM/AsmPrinter/ARMMCInstLower.h
@@ -13,6 +13,7 @@
 #include "llvm/Support/Compiler.h"
 
 namespace llvm {
+  class MCAsmInfo;
   class MCContext;
   class MCInst;
   class MCOperand;
@@ -26,24 +27,27 @@
 /// ARMMCInstLower - This class is used to lower an MachineInstr into an MCInst.
 class VISIBILITY_HIDDEN ARMMCInstLower {
   MCContext &Ctx;
-  Mangler *Mang;
+  Mangler &Mang;
+  
+  const unsigned CurFunctionNumber;
+  const MCAsmInfo &MAI;
 
   //const ARMSubtarget &getSubtarget() const;
 public:
-  ARMMCInstLower(MCContext &ctx, Mangler *mang)
-    : Ctx(ctx), Mang(mang) {}
+  ARMMCInstLower(MCContext &ctx, Mangler &mang, unsigned FuncNum,
+                 const MCAsmInfo &mai)
+    : Ctx(ctx), Mang(mang), CurFunctionNumber(FuncNum), MAI(mai) {}
   
   void Lower(const MachineInstr *MI, MCInst &OutMI) const;
 
-/*
- MCSymbol *GetPICBaseSymbol() const;
-  
+  //MCSymbol *GetPICBaseSymbol() const;
   MCSymbol *GetGlobalAddressSymbol(const MachineOperand &MO) const;
-  MCSymbol *GetExternalSymbolSymbol(const MachineOperand &MO) const;
+  //MCSymbol *GetExternalSymbolSymbol(const MachineOperand &MO) const;
   MCSymbol *GetJumpTableSymbol(const MachineOperand &MO) const;
   MCSymbol *GetConstantPoolIndexSymbol(const MachineOperand &MO) const;
   MCOperand LowerSymbolOperand(const MachineOperand &MO, MCSymbol *Sym) const;
   
+/*
 private:
   MachineModuleInfoMachO &getMachOMMI() const;
  */